/**
 * 
 */
package pe.bf.extranet.ws;

import java.io.BufferedReader;
import java.io.ByteArrayInputStream;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.util.ArrayList;
import java.util.List;

import javax.ejb.EJB;
import javax.jws.WebMethod;
import javax.jws.WebService;

import pe.bf.domain.bean.Abono;
import pe.bf.domain.bean.SolicitudAbono;
import pe.bf.domain.exceptions.DomainException;
import pe.bf.extranet.ejb.SolicitudAbonoEJB;
import pe.bf.extranet.ejb.SolicitudCreacionEJB;

/**
 * @author rfigueroa
 *
 */
@WebService
public class SolicitudAbonoWS {

	
	@EJB
	private SolicitudAbonoEJB solicitudAbonoEJB;
	
 
	public SolicitudAbonoWS() {
		// TODO Auto-generated constructor stub
	}

	
	
	@WebMethod
	public void createSolicitudAbono(SolicitudAbono solicitudAbono)  {
		try {
			solicitudAbonoEJB.createSolicitudAbono(solicitudAbono);
		} catch (DomainException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
	}

	@WebMethod
	public void actualizarSolicitudAbono(SolicitudAbono solicitudAbono)
			throws DomainException {
		solicitudAbonoEJB.actualizarSolicitudAbono(solicitudAbono);
	}

	@WebMethod
	public void eliminarSolicitudAbono(SolicitudAbono solicitudAbono)
			throws DomainException {
		solicitudAbonoEJB.eliminarSolicitudAbono(solicitudAbono);
	}

	@WebMethod
	public List<SolicitudAbono> listarSolicitudAbono() {
		try {
			return solicitudAbonoEJB.listarSolicitudAbono();
		} catch (DomainException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
			return null;
		}
	}

	@WebMethod
	public List<SolicitudAbono> listarSolicitudAbonoPorEmpresa(BigInteger codigoEmpresa)   {
		try {
			return solicitudAbonoEJB.listarSolicitudAbonoPorEmpresa(codigoEmpresa);
		} catch (DomainException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
			return null;
		}
	}

	@WebMethod
	public List<Abono> listarDetalleSolicitudAbono(	BigInteger codigoEmpresa, BigInteger codigoSolicitudAbono) {
		try {
			return solicitudAbonoEJB.listarDetalleSolicitudAbono( codigoEmpresa, codigoSolicitudAbono);
		} catch (DomainException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
			return null;
		}
	} 
	
}
